RedRob = {}
---@param name string
---@param super string
function RedRob.CreateClass(name,super)
    local _super
    if super then
        _super = RedRob[super]
    end
    local cls = Class(name,_super)
    RedRob[name] = cls
    return cls
end
function RedRob.CreateSingleton(name)
    local cls = {}
    RedRob[name] = cls
    return cls
end

require("RedRob/Entity/Actor")
require("RedRob/Entity/Pawn")
require("RedRob/Entity/Player")
require("RedRob/Entity/Minerals")
require("RedRob/Entity/Stone")
require("RedRob/ClientBattle")
require("RedRob/BattleMsgHandler")
require("RedRob/State/StateBase")
require("RedRob/State/IdleState")
require("RedRob/State/RunState")
require("RedRob/State/FailedState")
require("RedRob/State/AttackState")
require("RedRob/State/WinState")
require("RedRob/Mgr/ActorManager")
require("RedRob/Mgr/KeyController")
require("RedRob/Mgr/SceneMgr")
require("RedRob/Mgr/StateController")
require("RedRob/Mgr/CameraController")
require("RedRob/Mgr/PoolMgr")
require("RedRob/Mgr/AiMgr")
require("RedRob/Mgr/EffectMgr")
require("RedRob/Mgr/SkillMgr")
require("RedRob/Mgr/ReportMgr")
require("RedRob/Mgr/BufferMgr")
require("RedRob/Ai/AiBase")
require("RedRob/Ai/PlayerAi")
require("RedRob/Ai/PlayerAutoFightAi")
require("RedRob/Skill/SkillBase")
require("RedRob/Skill/Skill")
require("RedRob/Skill/SkillNode")
require("RedRob/Effect/EffectBase")
require("RedRob/Effect/Bullet")
require("RedRob/GameMode")
require("RedRob/Buffer/BuffBase")
require("RedRob/Buffer/Buffer")
require("RedRob/RobConfig") --config请保持在最后require










---@class RedRob
---@field Actor RedRob.Actor
---@field Pawn RedRob.Pawn
---@field Player RedRob.Player
---@field Minerals RedRob.Minerals
---@field Stone RedRob.Stone
---@field StateBase RedRob.StateBase
---@field IdleState RedRob.IdleState
---@field RunState RedRob.RunState
---@field AttackState RedRob.AttackState
---@field WinState RedRob.FailedState
---@field WinState RedRob.WinState
---@field StateController RedRob.StateController
---@field ActorManager RedRob.ActorManager
---@field ClientBattle RedRob.ClientBattle
---@field BattleMsgHandler RedRob.BattleMsgHandler
---@field KeyController RedRob.KeyController
---@field CameraController RedRob.CameraController
---@field SceneMgr RedRob.SceneMgr
---@field ReportMgr RedRob.ReportMgr
---@field PoolMgr RedRob.PoolMgr
---@field AiMgr RedRob.AiMgr
---@field EffectMgr RedRob.EffectMgr
---@field BufferMgr RedRob.BufferMgr
---@field AiBase RedRob.AiBase
---@field PlayerAi RedRob.PlayerAi
---@field PlayerAutoFightAi RedRob.PlayerAutoFightAi
---@field Config RedRob.Config
---@field SkillBase RedRob.SkillBase
---@field Skill RedRob.Skill
---@field SkillNode RedRob.SkillNode
---@field SkillMgr RedRob.SkillMgr
---@field EffectBase RedRob.EffectBase
---@field Bullet RedRob.Bullet
---@field GameMode RedRob.GameMode
---@field Buffer RedRob.Buffer
---@field BuffBase RedRob.BuffBase